package cn.tedu.reflection;

import org.junit.Test;

/**本类用作反射技术测试类*/
public class TestReflect {
    /**单元测试方法:是Java运行测试的最小单位
     * 使用灵活,推荐程度5星
     * 语法要求:@Test +void +没有参数+public
     * 注意:使用时需要导包:Add Junit4 to classpath
     * import org.junit.Test;
     * */
    //2.定义单元测试方法获取字节码对象
    @Test
    public void getClazz() throws ClassNotFoundException {
        //此处的参数是目标类的全路径名:包名+类名
        Class<?> student1 = Class.forName("cn.tedu.reflection.Student");
        Class<?> student2 =Student.class;
        Class<?> student3 =new Student().getClass();
        System.out.println(student1);//直接打印获取到的字节码对象
        System.out.println(student2.getName());//获取类的全路径名
        System.out.println(student3.getSimpleName());//Student,只获取类名
        System.out.println(student3.getPackage());//package cn.tedu.reflection,获取包对象
        System.out.println(student3.getPackage().getName());//获取包名
    }
}
